Резервное копирование подсистем ALD Pro

Резервное копирование (далее - бэкапирование)

  • Раздел состоит из перечня скриптов резервного копирования каждой подсистемы (сервера).

  • Требования к последовательности запуска скриптов - отсутствуют.

  • Допустимо выборочное резервное копирование подсистем (серверов).

Резервное копирование Контроллера домена

Для выполнения резервного копирования Контроллера Домена необходимо перейти на рабочую станцию, которая выполняет роль Контроллера Домена и выполнить скрипт:

#!/usr/bin/env bash
# Название директории для резервной копии формируется
# из текущей даты и находится в папке /tmp/backup
now=$(date +"%d-%m-%Y")
BACKUP_PATH=/tmp/backup/$now
# Создание временной директории для резервных копий
mkdir -p $BACKUP_PATH
# Ограничение прав доступа к каталогу с резервными копиями
chown root:root $BACKUP_PATH && chmod 700 $BACKUP_PATH
# Создание резервной копии FreeIPA
ipa-backup
# Архивирование РК FreeIPA
tar -zcvf $BACKUP_PATH/ipa.tar.gz /var/lib/ipa/backup
# Очистка промежуточного бэкапа FreeIPA
rm -rf /var/lib/ipa/backup/*
# Остановка затрагиваемых бэкапом сервисов
systemctl stop apache2 celery celerybeat rabbitmq-server postgresql aldpro-salt-minion
# Архивирование БД PostgreSQL
tar -zcvf $BACKUP_PATH/postgresql.tar.gz /var/lib/postgresql/
# Архивирование RabbitMQ
tar -zcvf $BACKUP_PATH/rabbitmq.tar.gz /var/lib/rabbitmq/mnesia/
# Архивирование директории ipa-client
tar -zcvf $BACKUP_PATH/ipa-client.tar.gz /var/lib/ipa-client/
# Архивирование логов
tar -zcvf $BACKUP_PATH/log.tar.gz --exclude=faillog --exclude=lastlog /var/log/
# Архивирование директории etc
tar -zcvf $BACKUP_PATH/etc.tar.gz /etc/
# Архивирование директории rbta
tar -zcvf $BACKUP_PATH/rbta.tar.gz /opt/rbta/
# Запуск затрагиваемых бэкапом сервисов
systemctl start apache2 celery celerybeat rabbitmq-server postgresql aldpro-salt-minion

Реплики - это равноправные серверы, не требующие отдельных условий для резервного копирования. Для их копирования используются команды, аналогичные командам для резервного копирования Контроллера домена.

Резервное копирование подсистемы журналирования событий

Для выполнения резервного копирования подсистемы журналирования событий необходимо перейти на рабочую станцию, которая выполняет функцию сервера журналирования событий и выполнить скрипт:

#!/usr/bin/env bash
# Название директории для резервной копии формируется
# из текущей даты и находится в папке /tmp/backup
now=$(date +"%d-%m-%Y")
BACKUP_PATH=/tmp/backup/$now
# Создание временной директории для резервных копий
mkdir -p $BACKUP_PATH
# Ограничение прав доступа к каталогу с резервными копиями
chown root:root $BACKUP_PATH && chmod 700 $BACKUP_PATH
# Архивирование логов
tar -zcvf $BACKUP_PATH/log.tar.gz --exclude=faillog --exclude=lastlog /var/log/
# Архивирование директории etc
tar -zcvf $BACKUP_PATH/etc.tar.gz /etc/
# Архивирование директории ipa-client
tar -zcvf $BACKUP_PATH/ipa-client.tar.gz /var/lib/ipa-client/

Резервное копирование подсистемы печати

Для выполнения резервного копирования подсистемы печати необходимо перейти на рабочую станцию, которая выполняет функцию сервера печати и выполнить скрипт:

#!/usr/bin/env bash
# Название директории для резервной копии формируется
# из текущей даты и находится в папке /tmp/backup
now=$(date +"%d-%m-%Y")
BACKUP_PATH=/tmp/backup/$now
# Создание временной директории для резервных копий
mkdir -p $BACKUP_PATH
# Ограничение прав доступа к каталогу с резервными копиями
chown root:root $BACKUP_PATH && chmod 700 $BACKUP_PATH
# Остановка затрагиваемых бэкапом сервисов
systemctl stop cups aldpro-salt-minion
# архивирование директории ipa-client
tar -zcvf $BACKUP_PATH/ipa-client.tar.gz /var/lib/ipa-client/
# архивирование логов
tar -zcvf $BACKUP_PATH/log.tar.gz --exclude=faillog --exclude=lastlog /var/log/
# архивирование директории etc
tar -zcvf $BACKUP_PATH/etc.tar.gz /etc/
# Запуск затрагиваемых бэкапом сервисов
systemctl start cups aldpro-salt-minion

Резервное копирование подсистемы DHCP

Для выполнения резервного копирования подсистемы DHCP необходимо перейти на рабочую станцию, которая выполняет функцию сервера DHCP и выполнить скрипт:

#!/usr/bin/env bash
# Название директории для резервной копии формируется
# из текущей даты и находится в папке /tmp/backup
now=$(date +"%d-%m-%Y")
BACKUP_PATH=/tmp/backup/$now
# Создание временной директории для резервных копий
mkdir -p $BACKUP_PATH
# Ограничение прав доступа к каталогу с резервными копиями
chown root:root $BACKUP_PATH && chmod 700 $BACKUP_PATH
# Архивирование директории ipa-client
tar -zcvf $BACKUP_PATH/ipa-client.tar.gz /var/lib/ipa-client/
# Архивирование логов
tar -zcvf $BACKUP_PATH/log.tar.gz --exclude=faillog --exclude=lastlog /var/log/
# Архивирование директории etc
tar -zcvf $BACKUP_PATH/etc.tar.gz /etc/

Резервное копирование подсистемы мониторинга

Для выполнения резервного копирования подсистемы мониторинга необходимо перейти на рабочую станцию, которая выполняет функцию сервера мониторинга и выполнить скрипт:

#!/usr/bin/env bash
# Название директории для резервной копии формируется
# из текущей даты и находится в папке /tmp/backup
now=$(date +"%d-%m-%Y")
BACKUP_PATH=/tmp/backup/$now
# Создание временной директории для резервных копий
mkdir -p $BACKUP_PATH
# Ограничение прав доступа к каталогу с резервными копиями
chown root:root $BACKUP_PATH && chmod 700 $BACKUP_PATH
# Остановка затрагиваемых бэкапом сервисов
systemctl stop apache2 zabbix-agent zabbix-server postgresql aldpro-salt-minion
# Архивирование директории ipa-client
tar -zcvf $BACKUP_PATH/ipa-client.tar.gz /var/lib/ipa-client/
# Архивирование логов
tar -zcvf $BACKUP_PATH/log.tar.gz --exclude=faillog --exclude=lastlog /var/log/
# Архивирование директории etc
tar -zcvf $BACKUP_PATH/etc.tar.gz /etc/
# Архивирование zabbix
tar -zcvf $BACKUP_PATH/zabbix.tar.gz /usr/share/zabbix/
# Архивирование БД PostgreSQL
tar -zcvf $BACKUP_PATH/postgresql.tar.gz /var/lib/postgresql/
# Запуск затрагиваемых бэкапом сервисов
systemctl start apache2 zabbix-agent zabbix-server postgresql aldpro-salt-minion

Резервное копирование подсистемы установки ОС по сети

Для выполнения резервного копирования подсистемы установки ОС по сети необходимо перейти на рабочую станцию, которая выполняет функцию сервера установки ОС по сети и выполнить скрипт:

#!/usr/bin/env bash
# Название директории для резервной копии формируется
# из текущей даты и находится в папке /tmp/backup
now=$(date +"%d-%m-%Y")
BACKUP_PATH=/tmp/backup/$now
# Создание временной директории для резервных копий
mkdir -p $BACKUP_PATH
# Ограничение прав доступа к каталогу с резервными копиями
chown root:root $BACKUP_PATH && chmod 700 $BACKUP_PATH
# Остановка затрагиваемых бэкапом сервисов
systemctl stop apache2 postgresql aldpro-salt-minion
# Архивирование PostgreSQL
tar -zcvf $BACKUP_PATH/postgresql.tar.gz /var/lib/postgresql/
# Архивирование логов
tar -zcvf $BACKUP_PATH/log.tar.gz --exclude=faillog --exclude=lastlog /var/log/
# Архивирование директории etc
tar -zcvf $BACKUP_PATH/etc.tar.gz /etc/
# Архивирование директории ipa-client
tar -zcvf $BACKUP_PATH/ipa-client.tar.gz /var/lib/ipa-client/
# Архивирование директории tftp
tar -zcvf $BACKUP_PATH/tftp.tar.gz /var/www/tftp/
# Запуск затрагиваемых бэкапом сервисов
systemctl start apache2 postgresql aldpro-salt-minion

Резервное копирование подсистемы репозиториев ПО

Для выполнения резервного копирования подсистемы репозиториев ПО необходимо перейти на рабочую станцию, которая выполняет функцию сервера репозиториев ПО по сети и выполнить скрипт:

#!/usr/bin/env bash
# Название директории для резервной копии формируется
# из текущей даты и находится в папке /tmp/backup
now=$(date +"%d-%m-%Y")
BACKUP_PATH=/tmp/backup/$now
# Создание временной директории для резервных копий
mkdir -p $BACKUP_PATH
# Ограничение прав доступа к каталогу с резервными копиями
chown root:root $BACKUP_PATH && chmod 700 $BACKUP_PATH
# Остановка затрагиваемых бэкапом сервисов
systemctl stop apache2 postgresql rabbitmq-server aldpro-salt-minion
# Архивирование БД PostgreSQL
tar -zcvf $BACKUP_PATH/postgresql.tar.gz /var/lib/postgresql/
# Архивирование данных брокера очередей RabbitMQ
tar -zcvf $BACKUP_PATH/rabbitmq.tar.gz /var/lib/rabbitmq/mnesia/
# Архивирование логов
tar -zcvf $BACKUP_PATH/log.tar.gz --exclude=faillog --exclude=lastlog /var/log/
# Архивирование директории etc
tar -zcvf $BACKUP_PATH/etc.tar.gz /etc/
# Архивирование директории ipa-client
tar -zcvf $BACKUP_PATH/ipa-client.tar.gz /var/lib/ipa-client/
# Архивирование директории repo/storage
tar -zcvf $BACKUP_PATH/storage.tar.gz /opt/rbta/aldpro/repo/storage/
tar -zcvf $BACKUP_PATH/ipa-client.tar.gz /var/lib/ipa-client/
# Архивирование домашнего каталога учетной записи repo
tar -zcvf $BACKUP_PATH/repo.tar.gz  /var/lib/repo/
# Запуск бэкапируемых сервисов
systemctl start apache2 postgresql rabbitmq-server aldpro-salt-minion

Резервное копирование подсистемы общего доступа

Для выполнения резервного копирования подсистемы общего доступа необходимо перейти на рабочую станцию, которая выполняет функцию сервера общего доступа по сети и выполнить скрипт:

#!/usr/bin/env bash
# Название директории для резервной копии формируется
# из текущей даты и находится в папке /tmp/backup
now=$(date +"%d-%m-%Y")
BACKUP_PATH=/tmp/backup/$now
# Создание временной директории для резервных копий
mkdir -p $BACKUP_PATH
# Ограничение прав доступа к каталогу с резервными копиями
chown root:root $BACKUP_PATH && chmod 700 $BACKUP_PATH
# Остановка затрагиваемых бэкапом сервисов
systemctl stop aldpro-salt-minion
# Архивирование логов
tar -zcvf $BACKUP_PATH/log.tar.gz --exclude=faillog --exclude=lastlog /var/log/
# Архивирование директории etc
tar -zcvf $BACKUP_PATH/etc.tar.gz /etc/
# Архивирование директории ipa-client
tar -zcvf $BACKUP_PATH/ipa-client.tar.gz /var/lib/ipa-client/
# Архивирование директории /opt/samba_shares/
tar -zcvf $BACKUP_PATH/samba.tar.gz /opt/samba_shares/
# Запуск затрагиваемых бэкапом сервисов
systemctl start aldpro-salt-minion

Раздел 2. Восстановление

  • Раздел состоит из перечня скриптов восстановления каждой подсистемы (сервера).

  • Требования к последовательности запуска скриптов восстановления - отсутствуют.

  • Допустимо выборочное восстановление подсистем (серверов).

Внимание

Все подсистемы устанавливаются только на машины-клиенты. Запрещено устанавливать две подсистемы на одну машину. Версия ОС и установленных пакетов должна быть идентична версии ОС, на которой работала подсистема.

При восстановлении данных через RuBackup на одном из контроллеров домена выполняется авторитативное восстановление. В этом случае восстанавливаемый контроллер домена получает новое значение генератора CSN и прекращает участие в репликации. Чтобы завершить восстановление домена, необходимо выполнить реинициализацию остальных контроллеров. Используйте команду:

ipa-replica-manage re-initialize --from <имя_восстановленного_контроллера>

После реинициализации все контроллеры скопируют базу данных с восстановленного контроллера, включая новое значение генератора CSN, поэтому репликация в домене восстановится.

Внимание

Все изменения, внесённые в домен после создания резервной копии, будут утеряны.

Восстановление Контроллера Домена

Для восстановления Контроллера Домена (КД) с использованием резервной копии небходимо соблюдение следующих условий:

  • Имя и адрес машины, на которой будет производиться восстановление КД, должно совпадать с именем и адресом машины, с которой была сделана резервная копия.

  • Версия ОС и версия обновления ОС на машине, на которой будет восстановлен КД, должны быть идентичны тем, что были установленны на машине, с которой сделана резервная копия.

В зависимости от количества КД в системе, восстановление резервной копии может отличаться:

  • В домене только один рабочий КД, на котором необходимо откатить данные на момент создания резервной копии. Необходимо воспользоваться скриптом для восстановления ниже.

  • В домене один КД, который вышел из строя, и восстановить его работостособность невозможно или нецелесообразно. Необходимо развернуть новый КД, идентичный вышедшему из строя, и воспользоваться скриптом для восстановления ниже. После перезагрузки восстановленного КД, необходимо проверить синхронизацию времени на КД и на других машинах, введенных в домен, для корректной работы билетов Kerberos.

  • В домене несколько КД, машина, накотором был установлен один из них, вышла из строя. Необходимо настроить машину и завести ее в домен с именем и адресом, идентичными тем, что были у машины, вышедшей из строя. С помощью команды aldpro-roles --uid --action install установить подсистему на новую машину. Воспользоваться скриптом для восстановления ниже. Повторить инициализацию КД для получения им актуальных данных с работающих КД.

  • В домене несколько КД, на одном из них произошел сбой и часть актуальной информации утрачена. Необходимо воспользоваться скриптом восстановления ниже. Произвести инициализацию работающих КД с восстановленным.

Скрипт для восстановления КД:

#!/bin/bash
# Перейти в директорию с резервными копиями
cd /tmp/backup/{дата создания бэкапа}
# Разархивирование РК IPA
tar -C "/" -xvf ipa.tar.gz
# Восстановление IPA из РК
ipa-restore /var/lib/ipa/backup/ipa-full-YOUR_BACKUP_DATE
# Остановка затрагиваемых восстановлением сервисов
systemctl stop apache2 celery celerybeat rabbitmq-server postgresql aldpro-salt-minion
# Чистим кеш у sssd service
rm -f /var/lib/sss/db/*
# Восстановление БД Postgresql
tar -C "/" -xvf postgresql.tar.gz
# Восстановление RabbitMQ
tar -C "/" -xvf rabbitmq.tar.gz
# Восстановление логов
tar -C "/" -xvf log.tar.gz
# Восстановление директории etc
tar -C "/" -xvf etc.tar.gz
# Восстановление директории rbta
tar -C "/" -xvf rbta.tar.gz
# Восстановление ipa-client
tar -C "/" -xvf ipa-client.tar.gz
# Перезагрузка
reboot

При выполнении скрипта backup_dc.sh архивируется бэкап, имя которого необходимо впоследствии подставить в скрипт восстановления. Имя бэкапа хранится в архиве. Если имя не указать, возникнет ошибка, но при этом бэкап разархивируется в /var/lib/ipa/backup/, по этому пути также можно будет найти имя бэкапа и подставить в скрипт для повторного выполнения.

Команда для просмотра содержимого архива:

tar -ztvf /tmp/backup/{дата создания бэкапа}/ipa.tar.gz

Команда для переинициализации репликации:

ipa-replica-manage re-initialize --from dc-1.ald.company.lan

Восстановление подсистемы журналирования событий

Восстановить подсистему необходимо, потому что:

  • Производились работы в конфигурационных файлах, после чего подсистема перестала работать. Для восстановления подсистемы необходимо воспользоваться скриптом ниже.

  • Машина, на которой располагалась подсистема, вышла из строя и нет возможности восстановить ее работу. Для восстановления подсистемы необходимо завести в домен машину с именем и адресом, идентичными тем, что были у машины, вышедшей из строя. С помощью команды aldpro-roles --uid --action install установить подсистему на новую машину. Запустить команду для получения переменных конфигурации для подсистемы aldpro-salt-call aldpro_subsystems.build_audit_role_pillar. Запустить команду для генерации конфигурационных файлов из полученных переменных aldpro-salt-call state.apply roles.audit. Воспользоваться скриптом для восстановления ниже.

Скрипт для восстановления подсистемы:

#!/bin/bash
# Переход в директорию с резервными копиями
cd /tmp/backup/
# Остановка затрагиваемых восстановлением сервисов
systemctl stop syslog-ng aldpro-salt-minion
# Восстановление логов
tar -C "/" -xvf log.tar.gz
# Перезагрузка
reboot

Восстановление подсистемы печати

Восстановить подсистему необходимо, потому что:

  • Производились работы в конфигурационных файлах, после чего подсистема перестала работать. Для восстановления подсистемы необходимо воспользоваться скриптом ниже.

  • Машина, на которой располагалась подсистема, вышла из строя и нет возможности восстановить ее работу. Для восстановления подсистемы необходимо завести в домен машину с именем и адресом, идентичными тем, что были у машины, вышедшей из строя. С помощью команды aldpro-roles --uid --action install установить подсистему на новую машину. Запустить команду для получения переменных конфигурации для подсистемы aldpro-salt-call aldpro_subsystems.build_cups_role_pillar. Запустить команду для генерации конфигурационных файлов из полученных переменных aldpro-salt-call state.apply roles.cups. Воспользоваться скриптом для восстановления ниже.

Скрипт для восстановления подсистемы:

#!/bin/bash
# Переход в директорию с резервными копиями
cd /tmp/backup/
# Остановка затрагиваемых бэкапом сервисов
systemctl stop cups aldpro-salt-minion
# Восстановление логов
tar -C "/" -xvf log.tar.gz
# Восстановление директории etc
tar -C "/" -xvf etc.tar.gz
# Восстановление ipa-client
tar -C "/" -xvf ipa-client.tar.gz
# Перезагрузка
reboot

Внимание

При восстановлении указанным способом информация в LDAP и на сервере может отличаться. Чтобы избежать этого, после восстановления системы необходимо выполнить команду: aldpro-roles --subsystem_settings cups

Восстановление подсистемы DHCP

Восстановить подсистему необходимо, потому что:

  • Производились работы в конфигурационных файлах, после чего подсистема перестала работать. Для восстановления подсистемы необходимо воспользоваться скриптом ниже.

  • Машина, на которой располагалась подсистема, вышла из строя и нет возможности восстановить ее работу. Для восстановления подсистемы необходимо завести в домен машину с именем и адресом, идентичными тем, что были у машины, вышедшей из строя. С помощью команды aldpro-roles --uid --action install установить подсистему на новую машину. Запустить команду для получения переменных конфигурации для подсистемы aldpro-salt-call aldpro_subsystems.build_dhcp_role_pillar. Запустить команду для генерации конфигурационных файлов из полученных переменных aldpro-salt-call state.apply roles.dhcp. Воспользоваться скриптом для восстановления ниже.

Скрипт для восстановления подсистемы:

#!/bin/bash
# Перейти в директорию с резервными копиями
cd /tmp/backup/
# Остановка затрагиваемых восстановлением сервисов
systemctl stop isc-dhcp-server aldpro-salt-minion
# Восстановление логов
tar -C "/" -xvf log.tar.gz
# Восстановление директории  etc
tar -C "/" -xvf etc.tar.gz
# Восстановление  ipa-client
tar -C "/" -xvf ipa-client.tar.gz
# Перезагрузка
reboot

Внимание

При восстановлении указанным способом информация в LDAP и на сервере может отличаться. Чтобы избежать этого, после восстановления системы необходимо выполнить команду: aldpro-roles --subsystem_settings dhcp

Восстановление подсистемы мониторинга

Восстановить подсистему необходимо, потому что:

  • Производились какие-то работы, после чего подсистема перестала работать. Для восстановления подсистемы необходимо воспользоваться скриптом ниже.

  • Машина, на которой располагалась подсистема, вышла из строя и нет возможности восстановить ее работу. Для восстановления подсистемы необходимо завести в домен машину с именем и адресом, идентичными тем, что были у машины, вышедшей из строя. С помощью команды aldpro-roles --uid --action install установить подсистему на новую машину. Воспользоваться скриптом для восстановления ниже.

Скрипт для восстановления подсистемы:

Пароль для восстановления базы данных - postgres

#!/bin/bash
# Перейти в директорию с резервными копиями
cd /tmp/backup/
# Остановка затрагиваемых бэкапом сервисов
systemctl stop apache2 zabbix-agent zabbix-server postgresql aldpro-salt-minion
# Восстановление БД PostgreSQL
tar -C "/" -xvf postgresql.tar.gz
# Восстановление логов
tar -C "/" -xvf log.tar.gz
# Восстановление директории zabbix
tar -C "/" -xvf zabbix.tar.gz
# Перезагрузка
reboot

Восстановление подсистемы установки ОС по сети

Восстановить подсистему необходимо, потому что:

  • Производились работы в конфигурационных файлах, после чего подсистема перестала работать. Для восстановления подсистемы необходимо воспользоваться скриптом:

  • Машина, на которой располагалась подсистема, вышла из строя и нет возможности восстановить ее работу. Для восстановления подсистемы необходимо завести в домен машину с именем и адресом, идентичными тем, что были у машины, вышедшей из строя. С помощью команды aldpro-roles --uid --action install установить подсистему на новую машину. Воспользоваться скриптом для восстановления:

#!/bin/bash
# Переход в директорию с резервными копиями
cd /tmp/backup
# Остановка затрагиваемых восстановлением сервисов
systemctl stop apache2 tftpd-hpa postgresql aldpro-salt-minion
# Восстановление БД PostgreSQL
tar -C "/" -xvf postgresql.tar.gz
# Восстановление логов
tar -C "/" -xvf log.tar.gz
# Восстановление директории tftp
tar -C "/" -xvf tftp.tar.gz
# Перезагрузка
reboot

Внимание

При восстановлении указанным способом информация в LDAP и на сервере может отличаться. Чтобы избежать этого, после восстановления системы необходимо выполнить команду: aldpro-roles --subsystem_settings os

Восстановление подсистемы репозиториев ПО

Восстановить подсистему необходимо, потому что:

  • Производились работы с конфигурационным файлом, после чего подсистема перестала работать. Для восстановления подсистемы необходимо воспользоваться скриптом:

#!/bin/bash
# Переход в директорию с резервными копиями
cd /tmp/backup
# Остановка затрагиваемых восстановлением сервисов
systemctl stop apache2 postgresql rabbitmq-server aldpro-salt-minion
# Восстановление БД PostgreSQL
tar -C "/" -xvf postgresql.tar.gz
# Восстановление RabbitMQ
tar -C "/" -xvf rabbitmq.tar.gz
# Восстановление логов
tar -C "/" -xvf log.tar.gz
# Восстановление директории etc
tar -C "/" -xvf etc.tar.gz
# Восстановление ipa-client
tar -C "/" -xvf ipa-client.tar.gz
# Восстановление директории с репозиториями
t ar -C "/" -xvf storage.tar.gz
# Перезагрузка
reboot
  • Машина, на которой располагалась подсистема, вышла из строя и нет возможности восстановить ее работу. Для восстановления подсистемы необходимо завести в домен машину с именем и адресом, идентичными тем, что были у машины, вышедшей из строя. С помощью команды aldpro-roles --uid --action install установить подсистему на новую машину. Запустить команду для получения переменных конфигурации для подсистемы aldpro-salt-call aldpro_subsystems.build_repo_role_pillar. Запустить команду для генерации конфигурационных файлов из полученных переменных aldpro-salt-call state.apply roles.repo. Воспользоваться скриптом для восстановления ниже.

Скрипт для восстановления подсистемы:

#!/bin/bash
# Переход в директорию с резервными копиями
cd /tmp/backup
# Остановка затрагиваемых восстановлением сервисов
systemctl stop apache2 postgresql rabbitmq-server aldpro-salt-minion
# Восстановление БД PostgreSQL
tar -C "/" -xvf postgresql.tar.gz
# Восстановление RabbitMQ
tar -C "/" -xvf rabbitmq.tar.gz
# Восстановление директории с репозиториями
tar -C "/" -xvf storage.tar.gz
# Восстановление логов
tar -C "/" -xvf log.tar.gz
# Перезагрузка
reboot

Восстановление подсистемы общего доступа к файлам

Восстановить подсистему необходимо, потому что:

  • Производились работы в конфигурационных файлах, после чего подсистема перестала работать. Для восстановления подсистемы необходимо воспользоваться скриптом:

#!/bin/bash
# Переход в директорию с резервными копиями
cd /tmp/backup
# Остановка затрагиваемых восстановлением сервисов
systemctl stop smbd nmbd aldpro-salt-minion
# Восстановление логов
tar -C "/" -xvf log.tar.gz
# Восстановление директории etc
tar -C "/" -xvf etc.tar.gz
# Восстановление ipa-client
tar -C "/" -xvf ipa-client.tar.gz
# Восстановление общих директорий samba
tar -C "/" -xvf samba.tar.gz
# Перезагрузка
reboot
  • Машина, на которой располагалась подсистема, вышла из строя и нет возможности восстановить ее работу. Для восстановления подсистемы необходимо завести в домен машину с именем и адресом, идентичными тем, что были у машины, вышедшей из строя. С помощью команды aldpro-roles --uid --action install установить подсистему на новую машину. Запустить команду для получения переменных конфигурации для подсистемы aldpro-salt-call aldpro_subsystems.build_smb_role_pillar. Запустить команду для генерации конфигурационных файлов из полученных переменных aldpro-salt-call state.apply roles.smb. Воспользоваться скриптом для восстановления ниже.

Скрипт для восстановления подсистемы:

#!/bin/bash
# Переход в директорию с резервными копиями
cd /tmp/backup
# Остановка затрагиваемых восстановлением сервисов
systemctl stop smbd nmbd aldpro-salt-minion
# Восстановление общих директорий samba
tar -C "/" -xvf samba.tar.gz
# Восстановление логов
tar -C "/" -xvf log.tar.gz
# Перезагрузка
reboot

Внимание

При восстановлении указанным способом информация в LDAP и на сервере может отличаться. Чтобы избежать этого, после восстановления системы необходимо выполнить команду:

aldpro-roles --subsystem_settings smb

Особенности интеграции с RuBackup

При копировании и восстановлении данных с помощью rubackup-client или непосредственно утилитами ipa-backup/ipa-restore из-за перезапуска служб каталога на контроллерах перестает работать WEB-сервис apache2, обеспечивающий доступ к консоли управления ALD Pro.

Для восстановления доступа к консоли управления ALD Pro нужно запустить сервис apache2.

При восстановлении данных из rubackup manager необходимо установить ползунок Восстановить на целевом ресурсе. Без этой опции восстановление данных каталога выполнено не будет.

../../_images/Vosstanovit%60_na_resurse.png